package Compation;

import java.util.ArrayList;
import java.util.List;

/**
 * 5397. 最简分数
 * 给你一个整数 n ，请你返回所有 0 到 1 之间（不包括 0 和 1）满足分母小于等于  n 的 最简 分数 。分数可以以 任意 顺序返回。
 */
public class simplifiedFractions {
    public List<String> simplifiedFractions(int n) {
        List<String> res = new ArrayList<>();
        if (n <= 1) {
            return res;
        }
        for (int i = 2; i <= n; i++) {
            for (int j = 1; j < i; j++) {
                if (hasDivisor(j, i)) {
                    continue;
                } else {
                    res.add(i + "/" + j);
                }
            }
        }
        return res;
    }

    /**
     *
     * @param divisor 分子
     * @param Denominator 分母
     * @return 是否存在公约数
     */
    private boolean hasDivisor(int divisor, int Denominator) {
        for (int i = 2; i < divisor; i++) {
            if (divisor % i == 0 && Denominator % i == 0) {
                return true;
            }
        }
        return false;
    }
}
